package com.jingyanzi.member.service;

import java.util.List;

import com.jingyanzi.member.domain.IntegralDO;
import com.jingyanzi.member.domain.IntegralLogDO;
import com.jingyanzi.member.domain.result.ResultDO;
import com.jingyanzi.member.query.IntegRalLogQueryDO;

/**
 * 积分记录管理 <b>Description: 记录会员积分的新增和使用明细</b><br>
 * 
 * @author Reading.Reagan</a>
 * @version 1.0
 * @Note <b>ProjectName:</b> member-api <br>
 *       <b>PackageName:</b> com.jingyanzi.member.service <br>
 *       <b>ClassName:</b> IIntegralLogService <br>
 *       <b>Date:</b> 2018年7月16日 下午5:27:52
 */
public interface IIntegralLogService {

	/**
	 * 增加积分记录 <b>Description: 新增、扣除积分记录，添加积分记录的同时，更新会员积分余额等信息</b><br>
	 * 
	 * @param domain
	 *            积分Log记录DO对象
	 * @return ResultDO
	 * @Note <b>Author:</b> Reading.Reagan <br>
	 *       <b>Date:</b> 2018年7月16日 下午5:28:36 <br>
	 *       <b>Version:</b> 1.0
	 */
	public ResultDO addLog(IntegralDO domain);

	/**
	 * 根据积分记录id查询积分记录详细情况
	 * <b>Description:</b><br>
	 * 
	 * @param id 积分记录id
	 * @return ResultDO IntegralLogDO 积分记录DO对象
	 * @Note <b>Author:</b> Reading.Reagan <br>
	 *       <b>Date:</b> 2018年7月16日 下午5:49:42 <br>
	 *       <b>Version:</b> 1.0
	 */
	public ResultDO get(Integer id);

	/**
	 * 根据会员id查询积分记录列表
	 * <b>Description:</b><br>
	 * 
	 * @param query 积分记录id
	 * @return ResultDO List<IntegralLogDO>
	 * @Note <b>Author:</b> Reading.Reagan <br>
	 *       <b>Date:</b> 2018年7月16日 下午5:49:42 <br>
	 *       <b>Version:</b> 1.0
	 */
	public ResultDO query(IntegRalLogQueryDO query);
}
